﻿<Serializable()> _
Public Class PessoaFisica
    Inherits Pessoa

    Private _nome As String
    Public Overridable Property Nome() As String
        Get
            Return _nome
        End Get
        Set(ByVal value As String)
            _nome = value
        End Set
    End Property

    Private _sobreNome As String
    Public Overridable Property SobreNome() As String
        Get
            Return _sobreNome
        End Get
        Set(ByVal value As String)
            _sobreNome = value
        End Set
    End Property

    Public Overridable Property NomeCompleto() As String
        Get
            Return String.Format("{0} {1}", _nome, _sobreNome)
        End Get
        Set(ByVal value As String)
            Throw New Exception("Propriedade somente leitura - NHibernate")
        End Set
    End Property

    Private _sexo As String
    Public Overridable Property Sexo() As String
        Get
            Return _sexo
        End Get
        Set(ByVal value As String)
            _sexo = value
        End Set
    End Property

    Private _CPF As String
    Public Overridable Property CPF() As String
        Get
            Return _CPF
        End Get
        Set(ByVal value As String)
            _CPF = value
        End Set
    End Property

    Private _RG As String
    Public Overridable Property RG() As String
        Get
            Return _RG
        End Get
        Set(ByVal value As String)
            _RG = value
        End Set
    End Property

    Private _passaporte As String
    Public Overridable Property Passaporte() As String
        Get
            Return _passaporte
        End Get
        Set(ByVal value As String)
            _passaporte = value
        End Set
    End Property

    Private _dataNascimento As Nullable(Of Date)
    Public Overridable Property DataNascimento() As Nullable(Of Date)
        Get
            Return _dataNascimento
        End Get
        Set(ByVal value As Nullable(Of Date))
            _dataNascimento = value
        End Set
    End Property

End Class